﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 练习01
{
    class Program
    {
        static void Main(string[] args)
        {
            // 1.定义数组 int[] intArray = {2, 3, 5, 7, 11, 13, 17}
            // <1>数组的元素反向打印
            // <2>求出数组中的最大值和最小值
            // <3>求数组当中所有元素的和
            int[] intArray = { 11, 3, 13, 17, 2, 5, 7 };
            //for (int i = 0; i < intArray.Length; i++)
            //{
            //    Console.WriteLine(intArray[intArray.Length - 1 - i]);
            //}
            //for (int i = intArray.Length - 1; i >= 0; i--)
            //{
            //    Console.WriteLine(intArray[i]);
            //}
            int min = intArray[0];
            int max = intArray[0];
            for (int i = 0; i < intArray.Length - 1; i++)
            {
                if (min > intArray[i])
                {
                    min = intArray[i];
                }
                if (max < intArray[i])
                {
                    max = intArray[i];
                }
            }
            Console.WriteLine(min);
            Console.WriteLine(max);

            int sum = 0;
            for (int i = 0; i < intArray.Length; i++)
            {
                sum += intArray[i];
            }
            Console.WriteLine("和是{0}", sum);

            // 2.分别用静态初始化和动态初始化（new）定义一个具有5个元素的整型数组，并求数组元素的和
            int[] intA = { 12, 2, 3, 6, 5};
            int[] intB = new int[] { 5, 2, 4, 1, 11};


            // 3.将上面声明的两个数组对应元素相加，放到另一个数组当中
            //int[] intC = new int[intA.Length];
            for (int i = 0; i < intA.Length; i++)
            {
                intA[i] = intA[i] + intB[i];
                Console.WriteLine(intA[i]);
            }

            // 4.复制一个数组，即两个数组容量一样，把其中一个数组中的元素，复制到另一个数组当中
            int[] intArrayCopy = new int[intArray.Length];
            //for (int i = 0; i < intArray.Length; i++)
            //{
            //    intArrayCopy[i] = intArray[i];
            //    Console.WriteLine(intArrayCopy[i]);
            //}
            //Array.Copy(intArray, intArrayCopy, 3);
            Array.Copy(intArray, intArrayCopy, intArray.Length);
            foreach (var item in intArrayCopy)
            {
                Console.WriteLine(item);
            }
        }
    }
}
